<!DOCTYPE html>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>test.diff</title>
<meta name="generator" content="KF5::SyntaxHighlighting (Diff)"/>
</head><body style="color:#1f1c1b"><pre>
commit 2b16665838c8afeaa0f065cafc747438de35876b
Author: Volker Krause &lt;vkrause@kde.org&gt;
Date:   Sat Oct 8 13:31:51 2016 +0200

    Implement dynamic DetectChar rules
    
    Needed for Perl highlighting.

<span style="font-weight:bold;">diff --git a/src/lib/rule.cpp b/src/lib/rule.cpp</span>
index f588985..c4c3b92 100644
<span style="color:#0057ae;">--- a/src/lib/rule.cpp</span>
<span style="color:#0057ae;">+++ b/src/lib/rule.cpp</span>
<span style="color:#0057ae;">@@ -308,12 +308,22 @@ bool DetectChar::doLoad(QXmlStreamReader&amp; reader)</span>
     if (s.isEmpty())
         return false;
     m_char = s.at(0);
<span style="color:#0057ae;">+    if (isDynamic()) {</span>
<span style="color:#0057ae;">+        m_captureIndex = m_char.digitValue();</span>
<span style="color:#0057ae;">+    }</span>
     return true;
 }
 
 MatchResult DetectChar::doMatch(const QString&amp; text, int offset, const QStringList &amp;captures)
 {
<span style="color:#bf0303;">-    Q_UNUSED(captures); // TODO</span>
<span style="color:#0057ae;">+    if (isDynamic()) {</span>
<span style="color:#0057ae;">+        if (captures.size() &lt;= m_captureIndex || captures.at(m_captureIndex).isEmpty())</span>
<span style="color:#0057ae;">+            return offset;</span>
<span style="color:#0057ae;">+        if (text.at(offset) == captures.at(m_captureIndex).at(0))</span>
<span style="color:#0057ae;">+            return offset + 1;</span>
<span style="color:#0057ae;">+        return offset;</span>
<span style="color:#0057ae;">+    }</span>
<span style="color:#0057ae;">+</span>
     if (text.at(offset) == m_char)
         return offset + 1;
     return offset;
<span style="font-weight:bold;">diff --git a/src/lib/rule_p.h b/src/lib/rule_p.h</span>
index d8862ae..d9cedbf 100644
<span style="color:#0057ae;">--- a/src/lib/rule_p.h</span>
<span style="color:#0057ae;">+++ b/src/lib/rule_p.h</span>
<span style="color:#0057ae;">@@ -103,6 +103,7 @@ protected:</span>
 
 private:
     QChar m_char;
<span style="color:#0057ae;">+    int m_captureIndex;</span>
 };
 
 class Detect2Char : public Rule
</pre></body></html>
